home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / libxml2 / libxml / catalog.h < prev    next >
C/C++ Source or Header  |  2006-04-25  |  5KB  |  183 lines

  1. /**
  2.  * Summary: interfaces to the Catalog handling system
  3.  * Description: the catalog module implements the support for
  4.  * XML Catalogs and SGML catalogs
  5.  *
  6.  * SGML Open Technical Resolution TR9401:1997.
  7.  * http://www.jclark.com/sp/catalog.htm
  8.  *
  9.  * XML Catalogs Working Draft 06 August 2001
  10.  * http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
  11.  *
  12.  * Copy: See Copyright for the status of this software.
  13.  *
  14.  * Author: Daniel Veillard
  15.  */
  16.  
  17. #ifndef __XML_CATALOG_H__
  18. #define __XML_CATALOG_H__
  19.  
  20. #include <stdio.h>
  21.  
  22. #include <libxml/xmlversion.h>
  23. #include <libxml/xmlstring.h>
  24. #include <libxml/tree.h>
  25.  
  26. #ifdef LIBXML_CATALOG_ENABLED
  27.  
  28. #ifdef __cplusplus
  29. extern "C" {
  30. #endif
  31.  
  32. /**
  33.  * XML_CATALOGS_NAMESPACE:
  34.  *
  35.  * The namespace for the XML Catalogs elements.
  36.  */
  37. #define XML_CATALOGS_NAMESPACE                    \
  38.     (const xmlChar *) "urn:oasis:names:tc:entity:xmlns:xml:catalog"
  39. /**
  40.  * XML_CATALOG_PI:
  41.  *
  42.  * The specific XML Catalog Processing Instuction name.
  43.  */
  44. #define XML_CATALOG_PI                        \
  45.     (const xmlChar *) "oasis-xml-catalog"
  46.  
  47. /*
  48.  * The API is voluntarily limited to general cataloging.
  49.  */
  50. typedef enum {
  51.     XML_CATA_PREFER_NONE = 0,
  52.     XML_CATA_PREFER_PUBLIC = 1,
  53.     XML_CATA_PREFER_SYSTEM
  54. } xmlCatalogPrefer;
  55.  
  56. typedef enum {
  57.     XML_CATA_ALLOW_NONE = 0,
  58.     XML_CATA_ALLOW_GLOBAL = 1,
  59.     XML_CATA_ALLOW_DOCUMENT = 2,
  60.     XML_CATA_ALLOW_ALL = 3
  61. } xmlCatalogAllow;
  62.  
  63. typedef struct _xmlCatalog xmlCatalog;
  64. typedef xmlCatalog *xmlCatalogPtr;
  65.  
  66. /*
  67.  * Operations on a given catalog.
  68.  */
  69. XMLPUBFUN xmlCatalogPtr XMLCALL
  70.         xmlNewCatalog        (int sgml);
  71. XMLPUBFUN xmlCatalogPtr XMLCALL    
  72.         xmlLoadACatalog        (const char *filename);
  73. XMLPUBFUN xmlCatalogPtr XMLCALL    
  74.         xmlLoadSGMLSuperCatalog    (const char *filename);
  75. XMLPUBFUN int XMLCALL        
  76.         xmlConvertSGMLCatalog    (xmlCatalogPtr catal);
  77. XMLPUBFUN int XMLCALL        
  78.         xmlACatalogAdd        (xmlCatalogPtr catal,
  79.                      const xmlChar *type,
  80.                      const xmlChar *orig,
  81.                      const xmlChar *replace);
  82. XMLPUBFUN int XMLCALL        
  83.         xmlACatalogRemove    (xmlCatalogPtr catal,
  84.                      const xmlChar *value);
  85. XMLPUBFUN xmlChar * XMLCALL    
  86.         xmlACatalogResolve    (xmlCatalogPtr catal,
  87.                      const xmlChar *pubID,
  88.                                      const xmlChar *sysID);
  89. XMLPUBFUN xmlChar * XMLCALL    
  90.         xmlACatalogResolveSystem(xmlCatalogPtr catal,
  91.                      const xmlChar *sysID);
  92. XMLPUBFUN xmlChar * XMLCALL    
  93.         xmlACatalogResolvePublic(xmlCatalogPtr catal,
  94.                      const xmlChar *pubID);
  95. XMLPUBFUN xmlChar * XMLCALL    
  96.         xmlACatalogResolveURI    (xmlCatalogPtr catal,
  97.                      const xmlChar *URI);
  98. #ifdef LIBXML_OUTPUT_ENABLED
  99. XMLPUBFUN void XMLCALL        
  100.         xmlACatalogDump        (xmlCatalogPtr catal,
  101.                      FILE *out);
  102. #endif /* LIBXML_OUTPUT_ENABLED */
  103. XMLPUBFUN void XMLCALL        
  104.         xmlFreeCatalog        (xmlCatalogPtr catal);
  105. XMLPUBFUN int XMLCALL        
  106.         xmlCatalogIsEmpty    (xmlCatalogPtr catal);
  107.  
  108. /*
  109.  * Global operations.
  110.  */
  111. XMLPUBFUN void XMLCALL        
  112.         xmlInitializeCatalog    (void);
  113. XMLPUBFUN int XMLCALL        
  114.         xmlLoadCatalog        (const char *filename);
  115. XMLPUBFUN void XMLCALL        
  116.         xmlLoadCatalogs        (const char *paths);
  117. XMLPUBFUN void XMLCALL        
  118.         xmlCatalogCleanup    (void);
  119. #ifdef LIBXML_OUTPUT_ENABLED
  120. XMLPUBFUN void XMLCALL        
  121.         xmlCatalogDump        (FILE *out);
  122. #endif /* LIBXML_OUTPUT_ENABLED */
  123. XMLPUBFUN xmlChar * XMLCALL    
  124.         xmlCatalogResolve    (const xmlChar *pubID,
  125.                                      const xmlChar *sysID);
  126. XMLPUBFUN xmlChar * XMLCALL    
  127.         xmlCatalogResolveSystem    (const xmlChar *sysID);
  128. XMLPUBFUN xmlChar * XMLCALL    
  129.         xmlCatalogResolvePublic    (const xmlChar *pubID);
  130. XMLPUBFUN xmlChar * XMLCALL    
  131.         xmlCatalogResolveURI    (const xmlChar *URI);
  132. XMLPUBFUN int XMLCALL        
  133.         xmlCatalogAdd        (const xmlChar *type,
  134.                      const xmlChar *orig,
  135.                      const xmlChar *replace);
  136. XMLPUBFUN int XMLCALL        
  137.         xmlCatalogRemove    (const xmlChar *value);
  138. XMLPUBFUN xmlDocPtr XMLCALL    
  139.         xmlParseCatalogFile    (const char *filename);
  140. XMLPUBFUN int XMLCALL        
  141.         xmlCatalogConvert    (void);
  142.  
  143. /*
  144.  * Strictly minimal interfaces for per-document catalogs used
  145.  * by the parser.
  146.  */
  147. XMLPUBFUN void XMLCALL        
  148.         xmlCatalogFreeLocal    (void *catalogs);
  149. XMLPUBFUN void * XMLCALL        
  150.         xmlCatalogAddLocal    (void *catalogs,
  151.                      const xmlChar *URL);
  152. XMLPUBFUN xmlChar * XMLCALL    
  153.         xmlCatalogLocalResolve    (void *catalogs,
  154.                      const xmlChar *pubID,
  155.                                      const xmlChar *sysID);
  156. XMLPUBFUN xmlChar * XMLCALL    
  157.         xmlCatalogLocalResolveURI(void *catalogs,
  158.                      const xmlChar *URI);
  159. /*
  160.  * Preference settings.
  161.  */
  162. XMLPUBFUN int XMLCALL        
  163.         xmlCatalogSetDebug    (int level);
  164. XMLPUBFUN xmlCatalogPrefer XMLCALL 
  165.         xmlCatalogSetDefaultPrefer(xmlCatalogPrefer prefer);
  166. XMLPUBFUN void XMLCALL        
  167.         xmlCatalogSetDefaults    (xmlCatalogAllow allow);
  168. XMLPUBFUN xmlCatalogAllow XMLCALL    
  169.         xmlCatalogGetDefaults    (void);
  170.  
  171.  
  172. /* DEPRECATED interfaces */
  173. XMLPUBFUN const xmlChar * XMLCALL    
  174.         xmlCatalogGetSystem    (const xmlChar *sysID);
  175. XMLPUBFUN const xmlChar * XMLCALL    
  176.         xmlCatalogGetPublic    (const xmlChar *pubID);
  177.  
  178. #ifdef __cplusplus
  179. }
  180. #endif
  181. #endif /* LIBXML_CATALOG_ENABLED */
  182. #endif /* __XML_CATALOG_H__ */
  183.